Imports Microsoft.VisualBasic
Imports System

Public Class CustomObject
  Private _DateTime As DateTime = DateTime.Now
  Private _Decimal As Decimal = 12.34

  Public AnArray As Integer() = New Integer() {1, 2, 3}
  Public AnInteger As Integer = 12
  Public AString As String = "abc"
  Public AStruct As CustomStruct = New CustomStruct()
  Public ASubObject As CustomObject2 = New CustomObject2()

  'public CustomObject CyclicReference;

  Public Property ADateTime() As DateTime
    Get
      Return _DateTime
    End Get
    Set(ByVal value As DateTime)
      _DateTime = value
    End Set
  End Property

  Public Property ADecimal() As Decimal
    Get
      Return _Decimal
    End Get
    Set(ByVal value As Decimal)
      _Decimal = value
    End Set
  End Property

  Public Sub New()
    ' Un-comment this to test cyclic reference validation
    ' CyclicReference = this
    AStruct.AChar = "a"
    AStruct.AnInteger = 1
  End Sub
End Class
